print("sample2.......")
local role = Observable({atk = 10})

-- 角色最终攻击力为自己身攻击力和宠物攻击力之和
AutoRun(function()
    local atk_final = role.atk + (role.pet and role.pet.atk or 0)
    print("atk_final:", atk_final)
end)
local p1 = Observable({atk= 88})
-- 修改role的pet后，触发调用监察函数，并且重新更新了监察对象
role.pet = p1
-- 监察对象已更新，此时pet的atk修改，触发监察函数调用
p1.atk = 111